Sensor control support apparatus, sensor control support method and non-transitory computer readable medium

ABSTRACT

According to one embodiment, a sensor control support apparatus includes: a sensor selector configured to, based on measurement data of a plurality of sensors for at least one monitoring target and state data indicating an state of the at least one monitoring target, select a sensor to be used for state prediction of the monitoring target from among the plurality of sensors; and a sensor controller configured to control the plurality of sensors based on a selection result of the sensor selector.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is based upon and claims the benefit of priority fromthe prior Japanese Patent Application No. 2017-151911, filed on Aug. 4,2017, the entire contents of which are incorporated herein by reference.

FIELD

Embodiments described herein relate to a sensor control supportapparatus, a sensor control support method and a non-transitory computerreadable medium.

BACKGROUND

Recently IoT (Internet of Things) has been explosively spreadingaccompanying development of sensors and communication technology.Especially, many attempts are made to classify/utilize time-seriesmeasurement data obtained from a plurality of sensors according toclassification purposes such as state monitoring/control of equipmentand anomaly detection.

The time-series measurement data acquired as above is enormous, and, insuch enormous data, information duplication may occur for aclassification purpose. Further, it leads to excess of information to,when it is possible to make an intended classification only by data of apart of sensors, collect data of other sensors. Further, it leads toincrease in power consumption to cause such sensors to operate. On theother hand, there is a possibility that sensors required for aclassification purpose change accompanying a change in a monitoringtarget system or a change in a sensor configuration.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is an overall configuration diagram of a system according to afirst embodiment;

FIG. 2 is a diagram showing an example in which a plurality of sensorsare attached to one monitoring target;

FIG. 3 is a block diagram showing a detailed configuration of a sensorcontrol support apparatus;

FIG. 4 is a diagram showing an example of a sensor data table in whichsensor data acquired from sensors 1 to “n” is stored;

FIG. 5 is a diagram showing another example of the sensor data table;

FIG. 6 is a diagram showing an example of a classification label table;

FIG. 7 is a diagram showing an example of an inter-data feature tablefor each sensor;

FIG. 8 is a diagram showing an example of a process for combininginter-data feature tables;

FIG. 9 is a diagram showing an operation image of a classification modelconstruction process;

FIG. 10 is a diagram showing an example of output information;

FIG. 11 is a flowchart of operation of the sensor control supportapparatus according to the first embodiment;

FIG. 12 is a block diagram showing a sensor control support apparatusaccording to a second embodiment;

FIG. 13 is a flowchart of operation of the sensor control supportapparatus according to the second embodiment;

FIG. 14 is a block diagram showing a sensor control support apparatusaccording to a third embodiment;

FIG. 15 is a diagram showing an example of a spec data table accordingto the third embodiment; and

FIG. 16 is a diagram showing a hardware configuration of a sensorcontrol support apparatus according to a fourth embodiment.

DETAILED DESCRIPTION

According to one embodiment, a sensor control support apparatusincludes: a sensor selector configured to, based on measurement data ofa plurality of sensors for at least one monitoring target and state dataindicating an state of the at least one monitoring target, select asensor to be used for state prediction of the monitoring target fromamong the plurality of sensors; and a sensor controller configured tocontrol the plurality of sensors based on a selection result of thesensor selector.

Embodiments of the present invention will be described below withreference to drawings.

First Embodiment

FIG. 1 shows an overall configuration diagram of a system according tothe present embodiment. The present system is provided with a sensorcontrol support apparatus 10, a gateway apparatus 20, an input/outputapparatus 30 and a plurality of sensors 1 to “n”. An outline of thepresent system will be described below with reference to FIGS. 1 and 2.

The sensors 1 to “n” are installed for a plurality of monitoring targets1 to “n” (“n” is at least two or more), respectively. Here, one sensoris installed for an individual monitoring target. However, the pluralityof sensors 1 to “n” may be installed for one monitoring target as inFIG. 2(A), or the number of installed sensors may be different for eachmonitoring target as in FIG. 2(B).

Each sensor is adapted to detect and transmit measurement data (sensordata) when the first to k-th conditions are satisfied as an initialstate. As an example, the first to k-th conditions specify arrival oftimings at the first to k-th points of time at predetermined timeintervals (every ten minutes, one hour or the like). The first point oftime, the second point of time, . . . the k-th point of time may be 0o'clock, 1 o'clock, . . . 23 o'clock, respectively. In this case, eachsensor detects and transmits sensor data every hour. Though it isassumed here that the sensors 1 to “n” detect and transmit sensor dataat the same timings, the timings are not limited thereto.

The gateway apparatus 20 receives the sensor data detected by thesensors 1 to “n” via wired or wireless communication. The gatewayapparatus 20 transmits the received sensor data to the sensor controlsupport apparatus 10. The gateway apparatus 20 may immediately transmitthe received sensor data to the sensor control support apparatus 10 ormay temporarily accumulate the received sensor data and transmit theaccumulated sensor data at predetermined time intervals.

Further, the gateway apparatus 20 is configured to be capable ofcontrolling the sensors 1 to “n” by a control signal. For example, thegateway apparatus 20 can perform on/off control of the sensors 1 to “n”.Further, the gateway apparatus 20 may control switching between a normaloperation mode and a low power consumption mode. As an example of thelow power consumption mode, the frequency of receiving sensor data fromthe sensors (the interval of receiving sensor data or the like) may bereduced.

The sensor control support apparatus 10 receives sensor data of thesensors 1 to “n” from the gateway apparatus 20. Thereby, the sensorcontrol support apparatus 10 receives sensor data of each sensorchronologically. A string of the sensor data received chronologicallywill be called time-series data.

Further, the sensor control support apparatus 10 acquires state dataindicating states of the monitoring targets at the time when sensor datais detected at the sensors 1 to “n” (that is, at the time when the firstto k-th conditions is satisfied). The state data may be received fromthe gateway apparatus 20 or may be acquired from the input/outputapparatus 30. Otherwise, the state data may be received from a server ora storage not shown. The input/output apparatus 30 is a terminaloperated by a user (a designer, a local worker, a maintenance person orthe like). The input/output apparatus 30 displays inputted data orinformation. Further, the input/output apparatus 30 accepts an inputfrom the user and outputs a signal indicating an instruction or datawhich has been inputted to the sensor control support apparatus 10.

The state data may be created by the user (the designer, the localworker, the maintenance person or the like) by actually confirming thestate of a monitoring target, or the present apparatus or anotherapparatus such as a server may create the state data from log data ofthe monitoring target. As an example, the state data includes aclassification label indicating the state of the monitoring target.Specifically, if the state of the monitoring target is normal, a labelindicating a normal class is included. If the state is anomalous, alabel indicating an anomalous class is included. When one sensor isinstalled for each of “n” monitoring targets as in the example of FIG.1, the label is the anomalous class label if one of the “n” monitoringtargets is anomalous, and the label is the normal class label if all themonitoring targets are normal, as an example. Hereinafter, the statedata will be called classification label data.

The sensor control support apparatus 10 is provided with a learning modeand an anomaly detection mode. In the learning mode, the sensor controlsupport apparatus 10 generates a classification model for predicting astate of a monitoring target using the sensor data of the sensors 1 to“n” and the state data. The state of a monitoring target refers towhether the monitoring target is anomalous or not, as an example. Inthis case, the classification purpose is anomaly detection. As forsensor data used in the learning mode, the user may give the sensor datausing the input/output apparatus 30.

As an example, the classification model is a function of calculating anobjective variable corresponding to a predicted state of a monitoringtarget from at least one explanatory variable corresponding to at leastone sensor and at least one coefficient corresponding to the at leastone explanatory variable. The explanatory variable is given a featurecalculated from sensor data of the corresponding sensor (as an example,an inter-data feature value to be described later).

The sensor control support apparatus 10 selects sensors corresponding toexplanatory variables included in a generated classification model,among the sensors 1 to “n”, as sensors to be used to predict states ofmonitoring targets. The sensors which have been selected will be calledselected sensors. The other sensors, that is, sensors which are not usedfor state prediction will be called unselected sensors.

The sensor control support apparatus 10 transmit a signal indicatingsensor IDs of the selected sensors to the gateway apparatus 20 asinformation about the selected sensors. Further, the sensor controlsupport apparatus 10 transmit a signal indicating sensor IDs of theunselected sensors to the gateway apparatus 20 as information about theunselected sensors. Communication with the gateway apparatus 20 can bewireless communication or wired communication. The sensor ID is a sensornumber as an example but is not limited thereto. Information other thanthe sensor IDs of the selected sensors may be included in theinformation about the selected sensors. For example, a sensing conditionfor the sensors may be included as described later.

The gateway apparatus 20 controls the sensors 1 to “n” based on theinformation about the selected sensors (or the information about theunselected sensors). Specifically, the gateway apparatus 20 controls thesensors 1 to “n” so as to maintain operation of the selected sensors andstop operation of the unselected sensors. That is, the gateway apparatus20 causes the selected sensors to be turned on and causes power sourcesof the unselected sensors to be turned off. It is also possible to causemain circuits of the unselected sensors to be turned off while powersources of communication circuits such as reception circuits forcommunicating with the gateway apparatus 20 are not turned off.

In the anomaly detection mode, the sensor control support apparatus 10predicts states of the monitoring targets based on the classificationmodel and sensor data of the selected sensors received from the gatewayapparatus 20. If an anomaly is detected, anomaly detection data showingthat the anomaly has been detected may be generated and outputted to theinput/output apparatus 30. The classification model may be mounted on ananomaly detection apparatus different from the sensor control supportapparatus 10 so that operation of the anomaly detection mode may beexecuted in the anomaly detection apparatus.

Though the input/output apparatus 30 and the gateway apparatus 20 areseparate apparatuses in FIG. 1, these may be configured as the sameapparatus.

By causing only the selected sensors used for anomaly detection to be onand causing the unselected sensors to be off, among the plurality ofsensors 1 to “n” for the monitoring targets as described above, powerconsumption can be reduced. The sensor control support apparatus will bedescribed below in more detail.

FIG. 3 is a block diagram showing a configuration of the sensor controlsupport apparatus 10.

The sensor control support apparatus 10 is provided with a sensorselector 9, a communicator 11, a sensor controller 14, an outputinformation generator 15, a storage 16, a storage 17, a storage 18 andan input interface 19. The sensor selector 9 is provided with a dataprocessor 12 and a model constructor 13. A part or all of these elementsmay be implemented by one or more circuits such as a CPU or a dedicatedcircuit. For example, the sensor selector 9 may be implemented by asensor selecting circuit, the sensor controller 14 may be implemented bya sensor controlling circuit, and the communicator 11 may be implementedby a communication circuit. In this case, the sensor selecting circuit,the sensor controlling circuit and the communication circuitry may bephysically same circuit or different circuits.

The communicator 11 is connected to the gateway apparatus 20 via a wiredor wireless network. The communicator 11 receives measurement data(sensor data) detected by operating sensors from the gateway apparatus20. It is assumed that, in the first learning mode, the sensors 1 to “n”are operating, and sensor data from the sensors 1 to “n” is received.The communicator 11 stores the received sensor data into a sensor datatable of the storage 16. Sensor data used in the learning mode may beinputted from the input/output apparatus 30 and stored into the sensordata table by the user. Each sensor detects and transmits sensor datawhen the first to k-th conditions is satisfied, as an initial state. Inthe present example, it is assumed that the first to k-th conditions arearrivals of timings at which the first to k-th points of time atpredetermined time intervals arrive. Another example of the first tok-th conditions, occurrence of a particular event (for example,detection of a value equal to or larger than a predetermined value,detection of a signal with a particular pattern or the like) is alsopossible.

Here, “sensor” is a generic name of equipment which observes a certainphysical quantity and converts the physical quantity to a digitalsignal. There are various sensors such as an acceleration sensor, amagnetic sensor, an image sensor, a humidity sensor, a temperaturesensor, a piezoelectric element, a mass sensor and a light sensor. Powergeneration devices such as a thermoelectric power generation element anda solar battery are also sensors. In this case, it can be thought thatan amount of power generation corresponds to a sensor value.

In the present embodiment, the monitoring targets may be equipment suchas air-conditioning equipment, equipment such as an MFP (MultifunctionPeripheral), or other objects or products. Further, the monitoringtargets may be living bodies such as humans, animals and plants.Furthermore, though anomaly detection of detecting whether a state isnormal or anomalous is dealt with as a classification purpose in thepresent embodiment, other classification purposes are also possible.

FIG. 4 shows an example of a sensor data table in which sensor datacollected from the sensors 1 to “n” is stored. For a sensor with thei-th sensor ID (a sensor “i”), “k” sensor data values are held aslearning data. Though the values of the learning data may be sensor datavalues themselves, they may be values obtained by performing statisticalprocessing of the sensor data values or may be values calculated basedon the sensor data values. In this case, such a mathematical operationmay be performed by the communicator 11 or another processor or may beperformed on the input/output apparatus 30 side. The learning datavalues may be called features.

In the table of FIG. 4, “n*k” elements “s_(i,j)” (“i” and “j” refer toan ID of a sensor and an ID of learning data, respectively) are held.For example, an element “s_(1,1)” represents a value (=0.4) of learningdata for “sensor ID=1” and “learning data ID=1”.

A learning data ID is associated with each piece of learning data. Thelearning data ID identifies a point of time when the corresponding pieceof learning data was detected (that is, a condition under which thelearning data was detected). For example, a learning data ID of 1 ofeach of the sensors 1 to “n” corresponds to a first point of time (thatis, the first condition).

FIG. 5 shows another example of the sensor data table. In this example,learning data is a vector (waveform data) holding a plurality oftime-series values. This table holds “n*k*T” elements “s_(i,j,t)”. Time“t” takes a value equal to or larger than 1 and equal to or smaller than“T”, and “T” is a positive real number equal to or larger than 2. Forexample, “s_(1,1,1)” represents a sensor feature (=2.1) in the case of“sensor ID=1”, “learning data ID=1” and “time t=1”. Further, “s_(1,1)”represents “learning data (t=1, t=2, t=T)=(2.1, 7.4, 9.5, . . . , 6.9)”of “sensor ID=1” and “learning data ID=1”.

If sensor data which could not be acquired or time at which sensor datacould not be acquired exists in the sensor data table examples in FIGS.4 and 5, an invalid value (such as “NA”) can be stored.

The communicator 11 receives classification label data (state data) froman external apparatus specified in advance. The external apparatus maybe the gateway apparatus 20 or may be a server different from thegateway apparatus 20. The communicator 11 stores the classificationlabel data into a classification label table of the storage 16. The usermay input the classification label data using the input/output apparatus30.

FIG. 6 shows an example of the classification label table. Theclassification label table includes learning data IDs and classificationlabels. As the classification label, there are a label of “1” indicatinga normal class and a label of “0” indicating an anomalous class. Alearning data ID is given to each label. If the classification label isunknown, an invalid value (such as “NA”) can be stored in acorresponding cell.

The data processor 12 of the sensor selector 9 performs preprocessingfor generating a classification model by the model constructor 13. Thedata processor 12 reads out pieces of learning data 1 to “k” of eachsensor from the sensor data table. The data processor 12 generates, foreach sensor, a plurality of data sets by combining arbitrary two piecesamong the pieces of learning data 1 to “k” and calculates a feature(hereinafter referred to as an inter-data feature) for each data set.Then, the generated inter-data features are stored into correspondingcells of a matrix having “k” lines and “k” columns. Thereby, aninter-data feature table is generated. The inter-data feature table isgenerated for each sensor.

For example, an inter-data feature “x_(j,r)” between the j-th learningdata “S_(i,j)” of the sensor “i” and the r-th learning data “S_(i,r)” ofthe sensor “i” is calculated by the following formula.[Formula 1]x _(j,r)=Dis(S _(i,j) ,S _(i,r))  (1)

A Dis function in the formula (1) is a function for calculating adistance between two pieces of learning data. Functions for performingaddition, subtraction, multiplication or division between two pieces oflearning data are conceivable. If learning data is time-series data, afunction for calculating a coefficient of correlation indicating adegree of similarity between two pieces of time-series data, DynamicTime Warping which is a distance function between pieces of time-seriesdata in consideration of non-linear distortion, Shaplet which is adistance function capable of considering partial time-series or the likeare conceivable.

When “j” and “r” are equal (that is, in the case of a self-mutualinter-data feature), the inter-data feature “x_(j,r)” is set to 0.Further, when a value of at least one piece of learning data of a datapair is an invalid value (“NA”) or when the value of the learning datais an unreliable value also, the inter-data feature is set to 0.

FIG. 7 shows an example of the inter-data feature table for each sensor.In FIG. 7, “S₁” to “S_(n)” indicate the sensors 1 to “n”. The inter-datafeature is indicated by “x_(j,r) (j=1, . . . , k; r=1, . . . , k)”. Forexample, “x_(1,2)” represents an inter-data feature between the learningdata 1 (learning data of “learning data ID=1”) and the learning data 2(learning data of “learning data ID=2”). Examples of the inter-datafeature include a degree of similarity or a difference between the twopieces of learning data. For example, when the inter-data feature is adifference, “x_(1,2)” is a value obtained by subtracting a value of thelearning data 2 from a value of the learning data 1, and “x_(2,1)” is avalue obtained by subtracting the value of the learning data 1 from thevalue of the learning data 2.

The data processor 12 acquires the classification label data from thestorage 16. The data processor 12 performs a binarization process aspreprocessing if classification labels are not binarized. For example,each classification label is converted to 1 or 0 by converting a valueequal to or above a threshold to 1, and a value below the threshold to0.

The data processor 12 performs a process for combining the inter-datafeature tables of the sensors 1 to “n”. Specifically, by combining theinter-data feature tables of all the sensors in a line direction, anexplanatory variable table is generated. When the combination process isperformed for the inter-data feature tables shown in FIG. 7, anexplanatory variable table with “n*k” columns and “k” lines isgenerated. For each column of the explanatory variable table,normalization may be performed so that an average of 0 and adistribution of 1 are obtained in a column direction. Otherwise, foreach line, normalization may be performed so that an average of 0 and adistribution of 1 are obtained in the line direction.

FIG. 8 shows an example of a process for combining inter-data featuretables. By integrating the inter-data feature tables of the sensors atan upper part of FIG. 8 in a line direction, an explanatory variabletable at a lower part of FIG. 8 is generated.

In the explanatory variable table, in a column of “(sensor ID, learningdata ID)=(1, 1)”, an inter-data feature (=0) between the learning data 1and the learning data 1, an inter-data feature between the learning data2 and the learning data 1, an inter-data feature between the learningdata 3 and the learning data 1, . . . , and an inter-data featurebetween the learning data “k” and the learning data 1 are stored for thesensor 1. In a column of “(sensor ID, learning data ID)=(2, k)”, aninter-data feature between the learning data 1 and the learning data 2,an inter-data feature (=0) between the learning data 2 and the learningdata 2, an inter-data feature between the learning data 3 and thelearning data 2, . . . , and an inter-data feature between the learningdata “k” and the learning data 2 are stored for the sensor 2. Aninter-data feature between learning data “j” and learning data “r” forthe sensor “n” may be represented by “x_(n,j,r)”.

The method for creating the explanatory variable table is not limited tothe above example. As an example of the another method for creating, thepieces of learning data of each column to be combined with the pieces oflearning data of each line may be limited to learning data having apredetermined label (for example, the normality class label) for eachsensor. Thereby, the size of the explanatory variable table can be keptsmall. If an invalid value (such as “NA”) is included as aclassification label, an inter-data feature calculated using learningdata corresponding to the classification label which is given theinvalid value, may be deleted from the inter-data feature table or theexplanatory variable table.

The data processor 12 provides the classification label data and theexplanatory variable table to the model constructor 13 of the sensorselector 9.

The model constructor 13 constructs a classification model based on theexplanatory variable table and classification label data received fromthe data processor 12.

Hereinafter, an example will be shown in which the model constructor 13generates a logistic regression model as a classification model. Modelsother than the logistic regression model, for example, an SVM can begenerated as a classification model.

The logistic regression model is a regression model in accordance withthe following formula:

$\begin{matrix}\left\lbrack {{Formula}\mspace{14mu} 2} \right\rbrack & \; \\{{{P\left( {y = \left. 1 \middle| X \right.} \right)} = {{{logit}(z)} = \frac{1}{1 + e^{z}}}}{z = {{\sum\limits_{i = 1}^{n}{\sum\limits_{j = 1}^{k}{\sum\limits_{r = 1}^{k}{\beta_{i,j,r}x_{i,j,r}}}}} + \beta_{0}}}} & (2)\end{matrix}$

Here, “logit” represents a logistic function; “logit(z)” has a valuerange larger than 0 and smaller than 1; and “β₀” represents anintercept.

Here, “x_(i,j,r)” is an explanatory variable corresponding to the i-thsensor. More specifically, “x_(i,j,r)” represents an inter-data featurebetween the j-th learning data and the r-th learning data for the i-thsensor (corresponding to an inter-data feature of a cell at which thej-th line and the r-th column cross each other in the inter-data featuretable of the i-th sensor).

Here, “β_(i,j,r)” is a coefficient (regression coefficient) for theinter-data feature “x_(i,j,r)”. Here, regression coefficients for onesensor “i” will be collectively written as “β_(i)={β_(i,1,1), β_(i,1,2),. . . , β_(i,k,k)}”. Further, “β_(i)” for all the sensors will becollectively written as “β={β₁, β₂, . . . , β_(n)}”.

Here, “z” is a value obtained by integrating the regression coefficient“β_(i,j,r)” and the inter-data feature “x_(i,j,r)”. For example, “z” isa value obtained by performing weighted addition of a plurality ofinter-data features “x_(i,j,r)”, in any one line in the explanatoryvariable table, with a plurality of regression coefficients “β_(i,j,r)”.As a modification, a formula which does not include “β₀” may be used asa formula for “z”.

Here, “X” is a vector which includes inter-data features “x_(i,j,r)”(i=1 to n, r=1 to k) about the j-th learning data of the “n” sensors.The number of elements of the vector is “n*k”. That is, “X” correspondsto any one line of the explanatory variable table. Further, “P(y=1|X)”(that is, the value of “logit(z)”) represents a probability of aclassification label (here, the normality class label) being 1 when thevector X is given. Here, “P(y=1|X)” has a value larger than 0 andsmaller than 1.

In the case of deciding a classification label to be given to amonitoring target using the classification model described above, amethod of using a threshold can be adopted as an example. As shown inthe example below, if the value of the function “logit(z)” (theprobability of being 1) is above a threshold “C”, 1 is given as aclassification label, and 0 is given as a classification label if thevalue is equal to or below the threshold “C”. The threshold “C” may beinputted from the input/output apparatus 30 by the user.classification label: 1 logit(z)>Cclassification label: 0 logit(z)<=C  [Formula 3]

It is necessary to determine “β={β₁, β₂, . . . , β_(n)}={β_(1,1,1),β_(1,1,2), . . . , β_(1,k,k), β_(2,1,1), β_(2,1,2), . . . , β_(2,k,k), .. . , β_(n,1,1), β_(n,1,2), . . . , β_(n,k,k)}”, which is a regressioncoefficient in Formula (2) and “β₀”. If all of “β_(1,j,r)” are 0 for“j=1 to k” and “r=1 to k”, it means that the sensor “i” is not used(does not have to be selected). Further, if all of “β_(i,s,r)” are 0 for“r=1 to k” in the case of “j=s”, and all of “β_(i,j,s)” are 0 for “j=1to k” in the case of “r=s”, it means that learning data “s” isunnecessary. That is, it means that, it is not necessary to select thecondition corresponding to the ID of the learning data “s”.

Here, “β={β₁, β₂, . . . , β_(n)}” and “β₀” can be determined, forexample, using a maximum likelihood estimation method or a least squaresmethod. In this case, in order to prevent over-learning, an estimationmethod which includes regularization and which is capable ofsimultaneously performing selection of variables and construction of aclassification model is used. Specifically, “Lasso” or “Elastic Net” isused. Since “Lasso” is a kind of “Elastic Net”, an example of using“Elastic Net” will be shown here.

In “Elastic Net”, at the time of determining “β” and “β₀” by the leastsquares method, Formula (3) of a minimization problem of a loss function“J” is solved using a penalty term “λE(β)”. Formula (3) is a concavefunction. The penalty term is shown by Formula (4). The loss function“J” is a sum of square errors between a true value “y_(j)” of anobjective variable and an estimated value (a value of logit)“y{circumflex over ( )}_(j)” calculated by a logistic regressionfunction having “β” and “β₀” as shown by Formula (5). Formula (5)represents a quantification value of a difference between a value of aclassification label (the true value “y_(j)”) and an output value of aclassification model (the value of “logit”). Formula (3) is an exampleof a function of minimizing a value based on Formula (5).

[Formula 4]argmin(J+λE(β))  (3)λE(β)=λ((1−α)Σ_(i=1) ^(n)Σ_(j=1) ^(k)Σ_(r=1) ^(k)∥β_(i,j,r)∥²+αΣ_(i=1)^(n)Σ_(j=1) ^(k)Σ_(r=1) ^(k)∥β_(i,j,r)∥)  (4)J=Σ _(j=1) ^(k)∥y_(j) −ŷ _(J)∥²  (5)

Here, “λ” is a parameter to decide strength of a penalty term, and “λ”can be decided in arbitrary method. As an example, a cross validationmethod can be used. For example, the explanatory variable table isdivided along the line direction (a horizontal direction along the page)to generate a plurality of partial tables, and an optimal “λ” is decidedfrom the plurality of partial tables by the cross validation method. Thenumber of divisions is generally about 10 to 100. For example, on theassumption of “k=200”, ten partial tables of “k=1 to 20, 21 to 40, . . ., 191 to 200” are obtained by division into ten. By constructing aclassification model using the second to tenth partial tables astraining cases and performing evaluation (such as accuracy evaluation)of the classification model using the first partial table as a testcase, “λ” satisfying a predetermined criterion (for example, such “λ”that an identification rate is the highest). This is repeated until eachpartial table has been used as a test case once. An optimal “λ” isdecided from among the decided “λ”s. For example, “λ” with the highestidentification rate is adopted. The specific example of the crossvalidation method is a mere example, and there are other variousspecific examples.

Here, “α” is a parameter that adjusts strengths of the first and secondterms of Formula (4). In “Elastic Net”, the range is “0<α<1”. In thecase of “Lasso”, “α=1” is assumed. Though the value of the parameter isarbitrary, for example, “α=0.5” is assumed.

As for regularization including “Elastic Net” or “Lasso”, seeRegularization and variable selection via the elastic net [Zou, Hui;Hastie, Trevor 2005].

Among the elements of the regression coefficient “β” determined in thisway (β_(i,j,r): i=1 to n, j=1 to k, r=1 to k), nonzero elements and zeroelements exist.

If at least one element is nonzero in “β_(i)=(β_(i,1,1), β_(i,1,2), . .. , β_(i,k,k))”, the model constructor 13 selects the sensor “i”. On theother hand, if all of “β_(i,1,1), β_(i,1,2), . . . , β_(i,k,k)” arezero, the model constructor 13 does not select the sensor “i”.

Further, for “β_(i,j,r)” which are nonzero, each of the learning data“j” and the learning data “r” for the sensor “i” is selected asrepresentative data. On the other hand, if all of “β_(i,s,r)” are zerofor “r=1 to k” in the case of “j=s”, and all of β_(i,j,s)″ are zero for“j=1 to k” in the case of “r=s”, the learning data “s” is not selectedfor the sensor “i”.

Though whether selection of sensors and learning data is possible or notis judged on the basis of whether nonzero or not here, whether theselection is possible or not may be judged on the basis of whether beinglarger than a threshold or not as a modification.

FIG. 9 shows an operation image of the classification model constructionprocess. On the left side of FIG. 9, classification labels correspondingto “learning data IDs=1 to k” are shown. In this example, in the case of“k=1 to p”, the monitoring target is normal (the classification labelseach is 1). In the case of “k=p+1 to q”, the monitoring target isanomalous (the classification labels each is 0). Regarding the values ofthe classification labels as true values, classification modelconstruction (estimate of the regression coefficient) is performed.

In the parentheses of “logit” in FIG. 9, an explanatory variable tableand “vector β=(β_(1,1,1), β_(1,1,2), β_(1,1,3), . . . , β_(i,j,r), . . ., β_(n,k,k))^(T)” are shown. This schematically expresses that a vectorthat stores values of each line of the explanatory variable table,“{x_(1,1,1), x_(1,1,2), x_(1,1,3), . . . , x_(i,j,r), . . . ,x_(n,k,k)}” is multiplied by the “vector β={β_(1,1,1), β_(1,1,2),β_(1,1,3), . . . , β_(i,j,r), . . . , β_(n,k,k)}”. That is, thisexpresses the formula for “z” of Formula (2).

As shown by a broken line arrow from the first line of the explanatoryvariable table (an uppermost broken line), when the learning data 1 ofeach sensor is acquired, the monitoring target is normal, that is, theclassification label is 1. Similarly, as shown by a broken line arrowfrom the k-th line of the explanatory variable table (a lowermost brokenline), when the learning data “k” of each sensor is acquired, themonitoring target is anomalous, that is, the classification label is 0.

Since each element of “β₁” becomes zero, that is, all of “β_(1,1,1),β_(1,1,2), β_(1,1,3), . . . , β_(1,1,k)” become zero, the sensor 1 isnot selected.

Here, since “β_(i,j,r)” is nonzero, the sensor “i” is selected. At leastthe learning data “j” and the learning data “r”, among the pieces oflearning data 1 to “k” of the sensor “i”, are selected as representativedata.

Though “β_(n,k,k)” is zero, the sensor “n” is selected if at least oneelement other than “β_(n,k,k)”, among elements of “β_(n)”, that is,“{β_(n,1,1), β_(n,1,2), β_(n,1,3), . . . , β_(n,k,k)}” is nonzero.Learning data paired with learning data corresponding to the nonzeroelement is also selected as representative data.

The model constructor 13 stores a classification model, sensor IDs ofselected sensors (selected sensor IDs), and learning data IDs ofrepresentative data (representative data IDs) about the selected sensorsinto the storage 18. Unselected sensor IDs may be added to the storage18. The classification model includes regression coefficients which arenonzero and does not include regression coefficients which are zero.Further, the classification model includes information about thedefinition of the function shown in Formula (2). These pieces ofinformation stored into the storage 18 will be referred to asmodel-related information.

Further, the model constructor 13 stores the selected sensor IDs, therepresentative data IDs and the unselected sensor IDs into the storage17. These pieces of information stored into the storage 17 will bereferred to as sensor control information.

The output information generator 15 generates output information to bepresented to the user based on the model-related information stored intothe storage 18. The output information generator 15 provides thegenerated output information to the input/output apparatus 30. Theinput/output apparatus 30 displays the output information received fromthe output information generator 15 on a screen. FIG. 10 shows anexample of the output information. As an example, the output informationincludes selected sensor IDs and representative data IDs. In addition tothese pieces of information, the output information may includeunselected sensor IDs. Further, data indicating a classification model(including definition of a function and regression coefficient values).Further, the output information may include other related informationsuch as information indicating the number of pieces of representativedata for each sensor.

Instead of Formula (4) of the penalty term described above, Formula (6)below may be used.

$\begin{matrix}{\mspace{79mu}\left\lbrack {{Formula}\mspace{14mu} 5} \right\rbrack} & \; \\{{\lambda\;{E(\beta)}} = {\lambda\left( {{\left( {1 - \alpha} \right){\sum\limits_{i = 1}^{n}{\sum\limits_{j = 1}^{k}{\sum\limits_{r = 1}^{k}{\beta_{i,j,r}}^{2}}}}} + {\alpha{\sum\limits_{i = 1}^{n}{\sum\limits_{j = 1}^{k}{\sum\limits_{r = 1}^{k}{\frac{1}{N_{i}}{\beta_{i,j,r}}}}}}}} \right)}} & (6)\end{matrix}$

Formula (6) is obtained by adding “1/∥Ni∥” on the right side of Formula(4). Here, “Ni” corresponds to the sensor “i”; the range of “i” is from1 to “n”; and “1/∥Ni∥” is a constant. A value of “Ni” is given toadvance for each sensor. It is assumed that “Ni” is a natural numberlarger than 0. The user sets the value of “Ni” larger for a sensor witha higher priority (that is, a sensor the designer wants to select more)among the sensors 1 to “n”. Thereby, for the sensor the designer wantsto select more, the value of a term that includes “1/∥Ni∥” is smaller,and the value of the penalty term is smaller. For example, the value of“Ni” is set larger for a sensor for which cost (installation cost andthe like) to be described later is lower.

Though an explanatory variable table is generated by combininginter-data feature tables of sensors in the embodiment described above,this process may be omitted. In this case also, a classification modelcan be constructed by a process similar to the above process.

The sensor controller 14 controls the sensors 1 to “n” based on a resultof selection of sensors by the sensor selector 9. More specifically, thesensor controller 14 controls the sensors 1 to “n” using the sensorcontrol information stored into the storage 17. Control of the sensors 1to “n” is performed via the gateway apparatus 20. However, when thesensor controller 14 is capable of directly communicating with thesensors 1 to “n”, the sensor controller 14 can directly send controlsignals to the sensors 1 to “n” to control the sensors.

The sensor controller 14 transmits the sensor control information (theselected sensor IDs, the representative data IDs and the unselectedsensor IDs) stored in the storage 17 to the gateway apparatus 20. Thegateway apparatus 20 performs on/off control of the sensors 1 to “n”based on the selected sensor IDs and the unselected sensor IDs includedin the sensor control information received from the sensor controller14. For example, if the selected sensor IDs are “S₂” and “S_(n)”, andthe unselected sensor IDs are “S₁”, and “S₃” to “S_(n-1)”, the sensors 2and “n” are kept being on, and the sensor 1 and the sensors 3 to “n−1”are turned off. Specifically, the gateway apparatus 20 generates acontrol signal giving an instruction to turn off power and transmits thegenerated control signal to the sensor 1 and the sensors 3 to “n−1”.When receiving this control signal, the sensor 1 and the sensors 3 to“n−1” turn off power for circuits such as the main circuits. Thereby,power consumption is reduced. Instead of turning off power, the sensorsmay be switched to the low power consumption mode. As an example of thelow power consumption mode, the frequency of collecting sensor data maybe reduced. Otherwise, the CPU clock may be reduced, or other methodsmay be used.

Further, the gateway apparatus 20 transmits a control signal giving aninstruction to detect sensor data under conditions corresponding torepresentative IDs, to sensors indicated by selected sensor IDs.Receiving the control signal, the sensors detect sensor data based onthe conditions shown by the control signal and transmit the detectedsensor data to the gateway apparatus 20. For example, in the example ofFIG. 10, since representative data IDs about the sensor 2 are 1, 2, 6,8, . . . , sensor data is detected when conditions corresponding to therepresentative data IDs are satisfied. If conditions corresponding tolearning data IDs 3, 4, 5, 7 and the like are satisfied, sensor data isnot detected. If the conditions specify timings, sensor data is detectedat timings when the learning data ID corresponds to 1, 2, 6, 8, . . . ,and sensor data is not detected at timings when the learning data IDcorresponds to 3, 4, 5, 7 or the like. Otherwise, as for the case wherethe learning data ID is 3, 4, 5, 7 or the like, it is also possible notto transmit the sensor data, though detecting sensor data at the timingscorresponding to 3, 4, 5, 7 or the like. In this case, transmissionpower can be reduced. Thus, by detecting or transmitting sensor dataonly when conditions corresponding to representative IDs are satisfied,power consumption can be reduced. It is also possible to perform onlyon/off control of sensors without performing control based onrepresentative data IDs. In this case, sensor data which is unnecessaryfor anomaly detection is collected, but it has no problem in operation.

Though the sensor controller 14 autonomously notifies sensor controlinformation to the gateway apparatus 20 in the present embodiment, thesensor controller 14 may notify the sensor control information based onan instruction from the user. In this case, the user identifies selectedsensor IDs, representative data IDs and unselected sensor IDs based onoutput information displayed on a screen of the input/output apparatus30 and inputs sensor control information using the input/outputapparatus 30. The input interface 19 receives this instruction andnotifies the inputted sensor control information to the sensorcontroller 14. The sensor controller 14 transmits the sensor controlinformation to the gateway apparatus 20.

FIG. 11 is a flowchart of operation of the sensor control supportapparatus according to the present embodiment. The communicator 11receives sensor data and classification label data (state data) from thegateway apparatus 20 or the input/output apparatus 30 and stores thereceived sensor data and classification label data into the storage 16(A11).

The data processor 12 reads out sensor data of each sensor from thestorage 16 and calculates a plurality of inter-data features for eachsensor (A12). More specifically, an inter-data feature table (see FIG. 7or 8) having “k” lines and “k” columns and storing an inter-data featurebetween the j-th learning data “S_(i,j)” and r-th learning data“S_(i,r)” of the sensor “i” in a corresponding cell. By combining theinter-data feature tables of all the sensors in a line direction, anexplanatory variable table is created (see FIG. 8). Normalization may beperformed for the explanatory variable table in a column direction (orin the line direction). For example, normalization is performed so that,for each column, average 0 and dispersion 1 are obtained for values ofcells belonging to the column.

Further, the data processor 12 reads out the classification label datafrom the storage 16. If each classification label included in theclassification label data is not binarized, the classification label isbinarized. For example, each classification label is converted to 1 or 0by converting a value equal to or above a threshold to 1, and a valuebelow the threshold to 0.

The data processor 12 provides the classification label data and theexplanatory variable table to the model constructor 13.

The model constructor 13 constructs a classification model using theclassification label data and the explanatory variable table (A13). Thatis, a regression coefficient (an explanatory variable) β included in theclassification model is calculated. As an example, the explanatoryvariable table is divided (for example, into ten) along the linedirection. The classification label data is also divided (for example,into ten), and divided pieces of classification data are associated withdivided explanatory variable tables. Then, the penalty term “λ” isdecided using the cross validation method, and a vector “β” including aplurality of regression coefficients is calculated by solving aminimization problem of an error function with regularization.

The model constructor 13 selects nonzero regression coefficients fromthe vector “β”, and causes sensors corresponding to the selectedregression coefficients to be selected sensors and causes other sensorsto be unselected sensors (A14). Further, leaning data (leaning datarelated to the selected sensors) required to calculate the nonzeroregression coefficients are caused to be representative data (A14).Details of methods for deciding the selected sensors, the unselectedsensors and the representative data are as described before.

The model constructor 13 stores the selected sensor IDs, therepresentative data IDs and the unselected sensor IDs into the storage17 as sensor control information. Further, the model constructor 13stores the classification model, the selected sensor IDs, therepresentative data IDs and like into the storage 18 as model-relatedinformation.

The sensor controller 14 reads out the sensor control information (theunselected sensor IDs, the selected sensor IDs and the representativedata IDs) from the storage 17 and transmits the sensor controlinformation to the gateway apparatus 20 (A15). Transmission of eitherthe unselected sensor IDs or the selected sensor IDs may be omitted.Sensors indicated by sensor IDs other than the sensor IDs thetransmission of which is omitted can be judged to be sensors indicatedby the remaining IDs on the gateway apparatus 20 side.

The gateway apparatus 20 transmits a control signal to the unselectedsensors to turn off power or switch to the low power consumption mode.Receiving the control signal, the sensors, for example, turn off poweror switch to the low power consumption mode. Even if power is turnedoff, power may be supplied to communication circuits such as receptioncircuits so that an instruction signal to turn on power can be receivedfrom the gateway apparatus 20.

Further, the gateway apparatus 20 transmits a control signal giving aninstruction to detect sensor data under conditions corresponding to therepresentative data IDs, to the selected sensors. Receiving the controlsignal, the sensors detect sensor data only when the conditionsspecified by the control signal are satisfied, and transmit the detectedsensor data to the present apparatus 10.

As described above, according to the present embodiment, it becomespossible to, by causing only such sensors that are required to performmonitoring according to a classification purpose, reduce the trouble ofmanually making settings for operation of sensors and reduce powerconsumption and communication cost.

Second Embodiment

FIG. 12 is a block diagram showing a sensor control support apparatus 10according to a second embodiment. A model reconstruction judger 51 isadded to the sensor control support apparatus according to the firstembodiment shown in FIG. 3. The model reconstruction judger 51 judgeswhether or not to reconstruct a classification model and, if deciding toreconstruct a classification model, instructs the model constructor 13to reconstruct a classification model. The model constructor 13reconstruct a classification model and updates model-related informationstored in the storage 18 and sensor control information stored in thestorage 17. The model reconstruction judger 51 instructs the sensorcontroller 14 to transmit the updated sensor control information. Thesensor controller 14 transmits the updated sensor control informationstored in the storage 17 to the gateway apparatus 20.

The reason for reconstructing a classification model will be described.After a classification model is constructed first, sensor data and statedata collected by the communicator 11 are accumulated in the storage 16.There may be a case where the sensor configuration is changed afterconstruction of the classification model, for example, by newlyinstalling a sensor for a monitoring target or removing an installedsensor. Further, there may be a case where, while the same sensor isused, the monitoring target of the sensor itself is changed to anothermonitoring target or may be expanded. In this case, if the sameclassification model is used, there is a possibility that theidentification rate of anomaly detection decreases. Further, if a sensorcorresponding to an explanatory variable included in the classificationmodel is removed, necessary sensor data cannot be collected, and anomalydetection cannot be executed. Therefore, in such cases, it is necessaryto reconstruct a classification model.

An example of judging by the model reconstruction judger 51 whether ornot to reconstruct a classification model will be described below.

First Example of Classification Model Reconstruction Judgment

As a first example, the model reconstruction judger 51 monitors sensordata stored in the storage 16 in a predetermined cycle or at arbitrarytimings (for example, at timings specified by the user). By comparingIDs of sensors (selected sensor IDs) used in a classification modelconstructed first or last (an existing classification model) with sensorIDs of sensor data collected afterwards, whether a change (addition,removal or the like) has been made in sensors or not. That is, it isjudged whether or not, after sensor control to turn on sensorscorresponding to explanatory variables used in the existingclassification model and turn off the other sensors is started, a changeis made in sensors by which sensor data is collected. For example, if“n+1” is detected as a sensor ID in sensor data collected this time, itis judged that a new sensor has been installed. Further, if a sensor IDof a sensor corresponding to a selected sensor ID is not detected, it isjudged that an existing sensor has been removed.

If it is detected that a change has been made in the sensors, the modelreconstruction judger 51 decides to reconstruct a classification model.The model reconstruction judger 51 instructs the model constructor 13 toreconstruct a classification model. However, in a case where an adequateamount of data is necessary to construct the classification model,construction of the model may not be performed until the necessaryamount of data is collected so that a model construction instruction isgiven at a point of time when the necessary amount of data isaccumulated.

The model constructor 13 constructs a classification model similarly tothe first embodiment based on sensor data measured after the change wasmade in the sensors and state data (classification label data)indicating states of monitoring targets at the time of the measurement.Then, selected sensor IDs, representative data IDs and unselected sensorIDs are identified based on the classification model. The modelconstructor 13 adds new sensor control information (the selected sensorIDs, the representative data IDs and the unselected sensor IDs) to thestorage 17. At this time, the last sensor control information may bedeleted or may be left as it is. The model constructor 13 adds newmodel-related information (the classification model, the selected sensorIDs, the representative data IDs and the like) to the storage 18. Thelast model-related information may be deleted or may be left as it is.

The model reconstruction judger 51 instructs the sensor controller 14 totransmit the new sensor control information (the updated sensor controlinformation). The sensor controller 14 reads out the updated sensorcontrol information from the storage 17 and transmits the sensor controlinformation to the gateway apparatus 20. The gateway apparatus 20controls each sensor based on the updated sensor control information.

Second Example of Classification Model Reconstruction Judgment

The user inputs a model reconstruction instruction using theinput/output apparatus 30, and the input interface 19 receives it. Theinput interface 19 notifies the instruction to the model reconstructionjudger 51. The model reconstruction judger 51 decides to perform modelreconstruction based on the instruction. Operation after that is thesame as the first example. Reasons for the user to judge to performmodel reconstruction are, for example, that the identification rate ofanomaly detection has decreased, that a predetermined period has passedafter a classification model was constructed first, that a sensor hasbeen exchanged because of deterioration of the sensor, and the like. Ifa sensor ID is changed when a sensor is exchanged, a modelreconstruction can be performed according to the first example describedabove.

Third Example of Classification Model Reconstruction Judgment

If a predetermined period has passed after the first or lastclassification model was constructed, the model reconstruction judger 51decides to perform model reconstruction. Otherwise, if theidentification rate of anomaly detection decreases while anomalydetection is performed using a classification model in the presentapparatus, the model reconstruction judger 51 decides to perform modelreconstruction. As examples of the case where the identification rate ofanomaly detection decreases, a case where the identification rate ofanomaly detection is below a threshold, a case where misdetection occursa predetermined number of times or more, and the like are given. Inthese cases, the model reconstruction judger 51 decides to perform modelreconstruction. Operation after that is the same as the first example.

Fourth Example of Classification Model Reconstruction Judgment

If the definition of classification label is changed, the modelreconstruction judger 51 decides to perform model reconstruction. Forexample, the definition that the classification label shows any of thetwo states of normal and anomalous is changed to definition that theclassification label shows any of three or more states. As an example ofthe three or more states, states “A”, “B” and “C” are given. A change ismade so that the classification label shows any of these states. As anexample, the states “A”, “B” and “C” are indicated by “01”, “10” and“11”. Three sections are generated using two thresholds, andclassification labels can be assigned to the monitoring targetsaccording to which sections state values of the monitoring targetsbelong.

In the case of handling three or more states, a multinomial logisticregression model or a multi-class SVM can be used as a classificationmodel. Thereby, it is possible to judge which of the three or morestates is applied.

Whether the definition of the classification label has been changed ornot may be detected by analyzing classification label data. Otherwise,the user may input a model reconstruction instruction signal because ofchanging the definition of the classification label from theinput/output apparatus 30 so that the model reconstruction judger 51 maydecide to perform model reconstruction based on the signal. The modelconstructor 13 can use a function according to the number of states as afunction for a classification model.

FIG. 13 is a flowchart of operation of the sensor control supportapparatus according to the present embodiment. Here, the operationaccording to the first example described above is shown.

After the first or last classification model (an existing classificationmodel) is constructed, the model reconstruction judger 51 monitorssensor data stored in the storage 16 in a predetermined cycle or atarbitrary timings (B11).

It is judged whether IDs of sensors used in the existing classificationmodel (selected sensor IDs) correspond to sensor IDs of sensor datacollected afterward (B12). If a new sensor ID is found, or a selectedsensor ID is not found in the collected sensor data, the modelreconstruction judger 51 decides to reconstruct a classification model.In the former case, it is conceivable that a new sensor has been added,as an example. In the latter case, it is conceivable that an existingsensor has been removed, as an example.

The model constructor 13 reconstructs a classification model accordingto the decision to reconstruct a classification model by the modelreconstruction judger 51 (B13). The model constructor 13 constructs theclassification model similarly to the first embodiment based on sensordata after detection of the change in the sensors and classificationlabel data. However, since an adequate amount of data is necessary toconstruct the classification model, construction of the model may not beperformed until the necessary amount of data is collected so that theconstruction is performed at a point of time when the necessary amountof data is accumulated.

The model constructor 13 identifies selected sensor IDs, representativedata IDs and unselected sensor IDs similarly to the first embodiment,based on the reconstructed classification model (B14). The modelconstructor 13 updates the sensor control information (the selectedsensor IDs, representative data IDs and unselected sensor IDs) in thestorage 17 and updates model-related information (the classificationmodel, the selected sensor IDs, and the representative data IDs and thelike) in the storage 18.

The sensor controller 14 notifies the updated sensor control informationto the gateway apparatus 20 (B15). The gateway apparatus 20 controlseach sensor based on the updated sensor control information.

As described above, according to the present embodiment, it becomespossible to reduce the trouble of manually making settings for operationof sensors and reduce power consumption and communication cost by, whensensors installed for monitoring are changed, identifying selectedsensors required for state prediction again, causing the selectedsensors which have been identified to be turned on and causingunselected sensors other than the selected sensors to be turned off.

Third Embodiment

FIG. 14 is a block diagram showing a sensor control support apparatusaccording to a third embodiment. A model selector 52 and a storage 53holding spec data of sensors are added to the sensor control supportapparatus according to the second embodiment shown in FIG. 12. The modelselector 52 selects one of a classification model constructed first orlast and a classification model reconstructed this time and notifies themodel constructor 13 that the selected classification model is to beused. If it is decided that the first or last classification model is tobe continuously used, the model constructor 13 does not updateinformation in any of the storages 17 and 18. Further, the modelreconstruction judger 51 does not instruct the sensor controller 14 totransmit sensor control information. On the other hand, if it is decidedthat the reconstructed classification model is to be used, operationsimilar to the case where a classification model is reconstructed in thesecond embodiment is performed.

An example of the model selector 52 performing model selection will bedescribed below.

First Example of Model Selection

The model selector 52 compares the identification rate of aclassification model constructed first or last (an existingclassification model) with the identification rate of a classificationmodel constructed this time (a latest classification model) and selectsa classification model with a higher identification rate. Theidentification rate of each classification model can be calculated usingsensor data and state data which are not used to construct eachclassification model.

Second Example of Model Selection

Based on costs of sensors corresponding to explanatory variablesincluded in an existing classification model and costs of sensorscorresponding to explanatory variables included in the latestclassification model, the model selector 52 selects any one of theclassification models. Cost of each sensor may be given in advance ormay be calculated using spec data of the sensor.

FIG. 15 shows an example of a spec data table storing spec data of eachsensor. This table includes the following items for each sensor:

-   -   Sampling frequency [Hz]    -   Sensor unit price [yen]    -   Continuous operating time [min]    -   DB capacity required for data storage [B]    -   Amount of power consumption of single sensor [kWh]

For sensors corresponding to the explanatory variables included in eachclassification model (that is, sensors of selected sensor IDs), themodel selector 52 identifies corresponding spec data of the sensors fromthe spec data table and calculates costs of the sensors from theidentified spec data. The following examples are conceivable as costindexes.

-   -   Operation cost [yen]    -   Required DB capacity [B]    -   Amount of power consumption [kWh]

The operation cost includes cost of periodic inspection, replacement andthe like as an example. Total cost obtained by summing up operation costduring a certain period (for example, five years) may be calculated. Thenecessary DB capacity is a storage capacity for storing sensor dataacquired by a sensor. The amount of power consumption is that of aselected sensor.

The model selector 52 sums up costs of the selected sensors in each ofthe existing classification model and the latest classification model.By comparing the total costs, a classification model with a lower totalcost is selected. As another method, a sensor with a highest cost may beidentified for each of the classification models so that, if cost of theidentified sensor exceeds an upper limit, a classification model usingthe sensor may not be selected. Model selection may be performed by amethod other than the methods stated here as far as judgment utilizingcosts is performed.

Third Example of Model Selection

Information about each classification model may be presented to the uservia the input/output apparatus 30 so that a classification modelselected by the user may be selected. At this time, the spec data tablesof the sensors, costs of the sensors or the like may be presented to theuser as reference information for model selection.

Both of the existing classification model and the latest classificationmodel may be selected instead of selecting one of them. In this case,sensors used in at least one of both classification models can beselected sensors, and sensors which are used in neither of theclassification models can be unselected sensors. Further, anomalydetection is performed by combining detection results of the twoclassification models. For example, if both classification models outputthe same detection result, the detection result is adopted. If theclassification models output different detection results, a detectionresult with a smaller distance from the threshold “C” (see Formula 3described before) may be adopted. Whether anomaly has been detected ornot may be judged by a method other than the method stated here.

Fourth Embodiment

A hardware configuration of the sensor control support apparatusesaccording to the first to third embodiments will be described.

FIG. 16 shows a hardware configuration of sensor control supportapparatuses according to the present embodiments. Each of the sensorcontrol support apparatuses according to the present embodiments isconfigured with a computer apparatus 100. The computer apparatus 100 isprovided with a CPU 151, an input interface 152, a display device 153, acommunication device 154, a main memory 155 and an external storage 156,which are mutually connected via a bus 157.

The CPU (Central Processing Unit) 151 executes sensor control support,which is a computer program, on the main memory 155. The sensor controlsupport refers to a program which realizes each of the above-describedfunctional components of the sensor control support apparatus. By theCPU 151 executing the sensor control support, each functional componentis realized.

The input interface 152 is a circuit for inputting an operation signalfrom an input device such as a keyboard, a mouse and a touch panel tothe sensor control support apparatus.

The display device 153 displays data or information outputted from thesensor control support apparatus. The display device 153 is, forexample, an LCD (Liquid Crystal Display), a CRT (Cathode-Ray Tube) or aPDP (Plasma Display) but is not limited thereto. The data or informationoutputted from the computer apparatus 100 can be displayed by thedisplay device 153.

The communication device 154 is a circuit for the sensor control supportapparatus to wirelessly or wiredly communicate with an externalapparatus. Measurement data can be inputted from the external apparatusvia the communication device 154. The measurement data inputted from theexternal apparatus can be stored into a sensor database.

The main memory 155 stores the sensor control support, data required forexecution of the sensor control support, data generated by execution ofthe sensor control support and the like. The sensor control support isdeveloped on the main memory 155 and executed. The main memory 155 is,for example, a RAM, a DRAM or an SRAM but is not limited thereto. Thestorage 16, 17, 18 or 53 in each embodiment may be constructed on themain memory 155.

The external storage 156 stores the sensor control support, datarequired for execution of the sensor control support, data generated byexecution of the sensor control support and the like. The program anddata are read out onto the main memory 155 at the time of executing thesensor control support. The external storage 156 is, for example, a harddisk, an optical disk, a flash memory or a magnetic tape but is notlimited thereto. The storage 16, 17, 18 or 53 in each embodiment may beconstructed on the external storage 156.

The sensor control support may be installed in the computer apparatus100 in advance or may be stored in a recording medium such as a CD-ROM.Further, the sensor control support may be uploaded onto the Internet.

The computer apparatus 100 may be provided with one or more processors151, input interfaces 152, display devices 153, communication devices154 and main memories 155, and peripheral equipment such as a printerand a scanner may be connected to the computer apparatus 100.

Further, the sensor control support apparatus may be configured with asingle computer apparatus 100 or may be configured as a systemconstituted by a plurality of computer apparatuses 100 that are mutuallyconnected.

While certain embodiments have been described, these embodiments havebeen presented by way of example only, and are not intended to limit thescope of the inventions. Indeed, the novel embodiments described hereinmay be embodied in a variety of other forms; furthermore, variousomissions, substitutions and changes in the form of the embodimentsdescribed herein may be made without departing from the spirit of theinventions. The accompanying claims and their equivalents are intendedto cover such forms or modifications as would fall within the scope andspirit of the inventions.

The invention claimed is:
 1. An information processing apparatuscomprising: a communicator configured to collect measurement data; asensor selector configured to, based on the measurement data of aplurality of sensors for at least one monitoring target and state dataindicating an state of the at least one monitoring target, select asensor to be used for state prediction of the monitoring target fromamong the plurality of sensors; and a sensor controller configured tocontrol the plurality of sensors based on a selection result of thesensor selector; wherein: the sensor selector constructs aclassification model in which at least one explanatory variablecorresponding to at least one sensor among the plurality of sensors isassociated with an objective variable indicating a predicted state ofthe monitoring target, based on the measurement data and the state data;the sensor selector causes the sensor corresponding to the at leastexplanatory variable to be the sensor to be used for the stateprediction; when a sensor different from the plurality of sensors isdetected or the selected sensor is not detected in the collectedmeasurement data, the sensor selector reconstructs the classificationmodel; and the sensor selector causes a sensor corresponding to anexplanatory variable included in the reconstructed classification modelto be the sensor to be used for the state prediction.
 2. The apparatusaccording to claim 1, wherein the sensor selector calculates anidentification rate of the classification model and an identificationrate of the reconstructed classification model and selects one of theclassification model and the reconstructed classification model based oncalculated identification rates; and the sensor selector causes a sensorcorresponding to the explanatory variable included in the selectedclassification model to be the sensor to be used for the stateprediction.
 3. The apparatus according to claim 1, wherein the sensorselector selects one of the classification model and the reconstructedclassification model based on cost of a sensor corresponding to theexplanatory variable included in the classification model and cost ofthe sensor corresponding to the explanatory variable included in thereconstructed classification model; and the sensor selector causes asensor corresponding to the explanatory variable included in theselected classification model to be the sensor to be used for the stateprediction.
 4. The apparatus according to claim 1, comprising an inputinterface configured to receive a user instruction; wherein: the sensorselector selects one of the classification model and the reconstructedclassification model based on the user instruction received by the inputinterface; and the sensor selector causes a sensor corresponding to theexplanatory variable included in the selected classification model to bethe sensor to be used for the state prediction.
 5. An informationprocessing method comprising: selecting, based on measurement data of aplurality of sensors for at least one monitoring target and state dataindicating an state of the at least one monitoring target, a sensor tobe used for state prediction of the monitoring target from among theplurality of sensors; controlling the plurality of sensors based on aselection result of the sensor selector; constructing a classificationmodel in which at least one explanatory variable corresponding to atleast one sensor among the plurality of sensors is associated with anobjective variable indicating a predicted state of the monitoringtarget, based on the measurement data and the state data; causing thesensor corresponding to the at least explanatory variable to be thesensor to be used for the state prediction; collecting the measurementdata; reconstructing the classification model when a sensor differentfrom the plurality of sensors is detected or the selected sensor is notdetected in the collected measurement data; and causing a sensorcorresponding to an explanatory variable included in the reconstructedclassification model to be the sensor to be used for the stateprediction.
 6. A non-transitory computer readable medium having acomputer program stored therein which causes a computer to performprocesses comprising: selecting, based on measurement data of aplurality of sensors for at least one monitoring target and state dataindicating an state of the at least one monitoring target, a sensor tobe used for state prediction of the monitoring target from among theplurality of sensors; controlling the plurality of sensors based on aselection result of the sensor selector; constructing a classificationmodel in which at least one explanatory variable corresponding to atleast one sensor among the plurality of sensors is associated with anobjective variable indicating a predicted state of the monitoringtarget, based on the measurement data and the state data; causing thesensor corresponding to the at least explanatory variable to be thesensor to be used for the state prediction; collecting the measurementdata; reconstructing the classification model when a sensor differentfrom the plurality of sensors is detected or the selected sensor is notdetected in the collected measurement data; and causing a sensorcorresponding to an explanatory variable included in the reconstructedclassification model to be the sensor to be used for the stateprediction.